<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		当对非Number类型的值进行运算时，会将这些值转换为Number然后再运算
		任何值和NaN做运算都得NaN 
		如果对两个字符串进行加法运算，则会做拼串
		任何的值和字符串做加法运算，都会先转换为字符串，然后再和字符串做拼串的操作
		任何值做减乘除运算时都会自动转换为Number,我们可以利用这一特点做隐式类型转换 可以通过-0*1/1来将其转换为Number
		<script type="text/javascript">
			var a=123;
			result=typeof a;
			 console.log(typeof result);  /* String */
			 
			b=2+null;
			console.log(b);
			 
			 
			b=2+NaN;
			console.log(b);
			  
			b="123"+"456";
			console.log(b);
			console.log(typeof b);
			
			b=1+"你好";
			console.log(b);
			console.log(typeof b);
			
			b=123+"1";
			console.log(b);
			console.log(typeof b);
			
			
			b="123"+1;
			console.log(b);
			console.log(typeof b);
			
			b=123;
			b=123+"";  /* 将b变为字符串 隐式类型转换*/
			console.log(b);
			console.log(typeof b);
			 
			 var c=123;
			 console.log("c="+c);
			 
			 b=1+2+"3"; /* 33 */
			 console.log(b);
			 
			 b="1"+2+3; /* 123 */
			 console.log(b);
			 
			 var d;
			 d=100-5;
			 console.log(d);
			 
			 
			 d=100-false;
			console.log(d);
			  
			 
			 d=100-"1";
			console.log(d);
			
			
			d=2*"8";  /* 16 */
			 console.log(d);
			 
			d=2*undefined; /* NaN */
			console.log(d);
			  
			d=2*null;
			console.log(d);
			
			d="1120";
			d=d-0;
			console.log(typeof d);
			console.log(d);
			
			
			
			
		</script>
	</head>
	<body>
	</body>
</html>